//1.配置打包入口
// 2.配置打包出口
// 这个文件，用的是nodejs的语法
// 需要使用nodejs提供的方法，先读取当前目录的绝对路径
const path = require('path');


const VueloaderPlugin = require('vue-loader/lib/plugin');
// 引入vue-loader15所需要的插件


module.exports = {
    entry:path.join(__dirname,'./src/main.js'), //__dirname获得当前目录的绝对路径
    output:{
        path:path.join(__dirname,'./dist'),
        filename:'bandle.js'
    },
    module:{ //专门用于配置所有的第三方模块的  loader加载器
            rules:[ // 这里是设置第三方加载器的匹配规则
               {test:/\.css$/,use:['style-loader','css-loader']},
            //    {test:/\.(jpg|jpeg|gif|png|bmp)$/,use:['url-loader']},
               {test:/\.(otf|eot|svg|ttf|woff|woff2)$/,use:['url-loader']},
               {test:/\.less$/,use:['style-loader','css-loader','less-loader']},
               {test:/ \.js$/,use:'babel-loader',exclude:/node_modules/},
               {test:/\.vue$/,use:'vue-loader'},
               {
                test: /\.(png|jpg|gif|jpeg)$/,
                use: [{
                  loader: 'url-loader',
                //   loader: 'file-loader',
                  options: {
                    esModule: false, // 这里设置为false
            //url-loader默认使用ES6模块化解析，而html-loader引入图片时commonjs
          //解析时会出问题：[object Moudle]
          //解决：关闭url-loader的ES6模块化，使用commonjs解析
                    name: '[name].[ext]',
                    limit: 10240
                  }
                }]
              }
              
            ]
    },
    resolve:{
        alias:{
            // "vue$":'vue/dist/vue.js'
        }
    },
    plugins:[
        new VueloaderPlugin()  //配置插件节点
    ],
    mode:'production',
    performance:{
      hints:'warning',
      maxAssetSize:3000000, //单位字节，默认250kb (250000)
      maxEntrypointSize:3000000,
    }
}
